home *** CD-ROM | disk | FTP | other *** search
/ Stone Design / Stone Design.iso / Stone_Friends / Wave / WavesWorld / Source / IBPalettes / WW3DKit / WW3DShader.h < prev    next >
Encoding:
Text File  |  1995-03-22  |  1.9 KB  |  66 lines

  1. // copyright 1993 Michael B. Johnson; some portions copyright 1994, MIT
  2. // see COPYRIGHT for reuse legalities
  3. //
  4.  
  5. #import <appkit/appkit.h>
  6.  
  7. #import <3Dkit/N3DShader.h>
  8. #import "WW3DCamera.h"
  9. #import "Protocol_WWRenderable.h"
  10.  
  11. @interface WW3DShader:N3DShader < WWRenderable >
  12. {
  13.   int        n;
  14.   RtToken    *tokens;
  15.   char       **archiveVector;
  16.   int        *printfNVector, *printfTypeVector;
  17.   RtPointer  *parms;
  18.   id         iconImage;
  19.   RtColor    ribColor;
  20.   char       *quickShader;
  21.   RtLightHandle  lightHandle;
  22.   BOOL           usingSupportedQRManShader;
  23.   int           volumeType; // 0 is interior, 1 is exterior; only applies for volume shaders
  24.   BOOL           pointOrArea; // 0 is point, 1 is area; only applies for light shaders
  25.   RtToken        token;
  26. }
  27.  
  28. - initWithShader:(const char *)shaderName n:(int)newN tokens:(RtToken *)newTokens parms:(RtPointer *)newParms archiveVector:(char **)newArchiveVector printfTypeVector:(int *)newPrintfTypeVector printfNVector:(int *)newPrintfNVector;
  29. - setShaderArgNamed:(const char *)argName withValue:(RtPointer)value;
  30. - setToken:(RtToken)theToken;
  31. - setInterior;
  32. - setExterior;
  33. - setPointSource;
  34. - setAreaSource;
  35. - (const char *)quickShader;
  36. - setQuickShader:(const char *)newQuickShader;
  37. - (RtToken)token;
  38. - setToken:(RtToken)newToken;
  39. - set;
  40. - assignQuickShader;
  41.  
  42. - (void)setN:(int)newN tokens:(RtToken *)newTokens parms:(RtPointer *)newParms 
  43.         archiveVector:(char **)newArchiveVector printfTypeVector:(int *)newPrintfTypeVector printfNVector:(int *)newPrintfNVector;
  44. - (int)n;
  45. - (RtToken *)tokens;
  46. - (RtPointer *)parms;
  47. - (char **)archiveVector;
  48. - (int *)printfNVector;
  49. - (int *)printfTypeVector;
  50.  
  51. // 3DReality stuff
  52. - setIconImage:id;
  53. - setIconImageNamed:(const char *)name;
  54. - iconImage;
  55.  
  56. - takeColorArg:sender;
  57. - takeFloatArg:sender;
  58. - takePointArg:sender;
  59. - takeStringArg:sender;
  60.  
  61. @end
  62.  
  63. #define WW_ATMOSPHERE 0
  64. #define WW_INTERIOR   1
  65. #define WW_EXTERIOR   2
  66.